Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reparation des energy meters #324

Closed
wants to merge 15 commits into from
Closed

Reparation des energy meters #324

wants to merge 15 commits into from

Conversation

valleedelisle
Copy link
Contributor

En gros, on essayais de pousser les energy meters deja existant, mais il semble y avoir des attributs manquants dans l'object. Apres verification, on n'a pas besoin de tout pousser.

Cleanup + ajout de logs aussi.

Une autre chose, on dirait qui a des noms qui ont changés, dont le mot total qui est disparu.

@valleedelisle valleedelisle added the energy_meter Probleme d'energy meters label Dec 4, 2023
Copy link
Collaborator

@ic-dev21 ic-dev21 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@gravelfreeman
Copy link

Merci beaucoup pour ton fix @valleedelisle. Ça fonctionne pour le moment.

J'ai ajouté le fix et ça la envoyé beaucoup de lignes d'erreurs dans les logs. Je me suis dit que c'était probablement normal. Après avoir clear mes logs et redémarré HAOS, j'ai seulement ces 2 lignes de logs qui persiste. Rien de grave mais il serait bien de modifier le code pour ne pas que ça se rende dans les logs. Peux-être faire un check avant d'essayer de créer les sensors à chaque redémarrage.

2023-12-08 09:11:14.835 ERROR (MainThread) [homeassistant.components.sensor] Entity id already exists - ignoring: sensor.hilo_energy_total_medium
2023-12-08 09:11:14.835 ERROR (MainThread) [homeassistant.components.sensor] Entity id already exists - ignoring: sensor.hilo_energy_total_low

Merci encore, je suis vraiment content à matin!

@ic-dev21
Copy link
Collaborator

ic-dev21 commented Dec 8, 2023

Merci beaucoup pour ton fix @valleedelisle. Ça fonctionne pour le moment.

J'ai ajouté le fix et ça la envoyé beaucoup de lignes d'erreurs dans les logs. Je me suis dit que c'était probablement normal. Après avoir clear mes logs et redémarré HAOS, j'ai seulement ces 2 lignes de logs qui persiste. Rien de grave mais il serait bien de modifier le code pour ne pas que ça se rende dans les logs. Peux-être faire un check avant d'essayer de créer les sensors à chaque redémarrage.

2023-12-08 09:11:14.835 ERROR (MainThread) [homeassistant.components.sensor] Entity id already exists - ignoring: sensor.hilo_energy_total_medium
2023-12-08 09:11:14.835 ERROR (MainThread) [homeassistant.components.sensor] Entity id already exists - ignoring: sensor.hilo_energy_total_low

Merci encore, je suis vraiment content à matin!

Voir #204 c'est un bug connu mais comme ça brise rien mettons que ça presse pas, ça fait juste polluer les logs au boot.

@gravelfreeman
Copy link

Bon je m'excuse à l'avance d'être porteur de mauvaise nouvelles.

Les sensors d'énergie ne rapportent pas l'information correctement.

Je ne suis pas un expert mais il semble que ça ne switch pas à la barre des 40 kWh. Honnêtement j'ai de la misère à expliquer les données que je vois.

Voici des screenshots par jour à partir d'il y a 5 jours quand je les ai remit.

image

image

image

image

image

@ic-dev21
Copy link
Collaborator

ic-dev21 commented Dec 13, 2023

Bon je m'excuse à l'avance d'être porteur de mauvaise nouvelles.

Les sensors d'énergie ne rapportent pas l'information correctement.

Je ne suis pas un expert mais il semble que ça ne switch pas à la barre des 40 kWh. Honnêtement j'ai de la misère à expliquer les données que je vois.

Voici des screenshots par jour à partir d'il y a 5 jours quand je les ai remit.

image

image

image

image

image

Question niaiseuse. L’heure de ton host est-elle bonne? Les switch en mi-journée sont louches.

@gravelfreeman
Copy link

gravelfreeman commented Dec 13, 2023

Question niaiseuse. L’heure de ton host est-elle bonne? Les switch en mi-journée sont louches.

Loin d'être un expert, j'ai fait la commande host info dans le shell de la vm.

image

image

Je ne comprend pas ce qui aurait changé et depuis quand c'est vraiment étrange.

Dans mon host shell tout semble ok

image

je viens de voir dans la VM que le system clock est setté à UTC, je pourrais choisir local mais je suis pas certain que je devrais prendre ça.

image

Apparently, there's a race condition in hass where, when we set the
state for a static entity, by the time the state is updated, it's
reverted back to the original state. This causes the entity state to
bounce back and forth.

When we control what exactly what can actually update the state by
listening to events and only setting it under specific condition, we get
stable results.
@ic-dev21 ic-dev21 self-requested a review December 17, 2023 14:21
Copy link
Collaborator

@ic-dev21 ic-dev21 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Switch à 40kwh au lieu de minuit.

@ic-dev21
Copy link
Collaborator

ic-dev21 commented Dec 17, 2023

@gravelfreeman ça pourrait t'intéresser:
Après test en local starté hier soir à 6PM sharp:
Le current rate affiche la bonne chose selon l'état du SELECT, plutôt que de se faire écraser à 0 aux 30 secondes, donc ce bout-là est fonctionnel.

Par contre, le switch "obligatoire" à low à minuit ne se fait pas, il s'est fait lorsque j'ai atteins 40kWh depuis le changement, ce matin.
image

@gravelfreeman
Copy link

Par contre, le switch "obligatoire" à low à minuit ne se fait pas, il s'est fait lorsque j'ai atteins 40kWh depuis le changement, ce matin.

Je confirme, c'est exactement ça qui se passe pour moi aussi.

Également il est imposible de supprimer les données eronnées de montant journalier dans le dashboard énergie. Même avec une réinstallation de Hilo component.

@ic-dev21
Copy link
Collaborator

ic-dev21 commented Dec 17, 2023

Par contre, le switch "obligatoire" à low à minuit ne se fait pas, il s'est fait lorsque j'ai atteins 40kWh depuis le changement, ce matin.

Je confirme, c'est exactement ça qui se passe pour moi aussi.

Également il est imposible de supprimer les données eronnées de montant journalier dans le dashboard énergie. Même avec une réinstallation de Hilo component.

C’est possible de le faire. Y’a la méthode drastique: nuke the db from orbit (deleter home-assistant.db dans ton dossier config)

Y’a probablement moyen d’altérer le tout comme c’est une db SQLite, par contre j’ai pas fait de recherches sur comment le faire.

Ça semble être faisable
https://community.home-assistant.io/t/fix-bad-data-in-energy-tab/347792

@gravelfreeman
Copy link

J'aimerais vraiment ça pouvoir aider. J'ai hâte que ça marche hehe!

@ic-dev21
Copy link
Collaborator

J'aimerais vraiment ça pouvoir aider. J'ai hâte que ça marche hehe!

Essaye 😉, j’avais jamais touché à du python avant de connaître cette intégration là, ça se fait par du monde!

@gravelfreeman
Copy link

J'aimerais vraiment ça pouvoir aider. J'ai hâte que ça marche hehe!

Essaye 😉, j’avais jamais touché à du python avant de connaître cette intégration là, ça se fait par du monde!

J'aimerais ça mais je suis poche en maths et j'ai toujours eu de la misère devant les lignes de code. La seule manière que je pourrais aider en ce moment serait de faire un don en argent pour motiver quelqu'un.

@gravelfreeman
Copy link

J'ai du updater mon component Hilo. Je pensais quasiment que ça avait merge et que Francis avait fix les energy meters avec la note dans le changelog. Malheureusement toujours la même erreur

2024-02-07 20:14:39.919 ERROR (MainThread) [homeassistant.components.sensor] Error while setting up hilo platform for sensor
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 344, in _async_setup_platform
    await asyncio.shield(task)
  File "/config/custom_components/hilo/sensor.py", line 184, in async_setup_entry
    await utility_manager.update(async_add_entities)
  File "/config/custom_components/hilo/managers.py", line 72, in update
    await utility_setup(self.hass, config)
  File "/usr/src/homeassistant/homeassistant/components/utility_meter/__init__.py", line 143, in async_setup
    if not conf[CONF_TARIFFS]:
           ~~~~^^^^^^^^^^^^^^
KeyError: 'tariffs'

Y a t-il un moyen d'enlever ça des logs en attendant un fix? Ça spam mes logs

2024-02-07 20:14:40.116 WARNING (MainThread) [custom_components.hilo] check_tarif: Unable to find state for sensor.hilo_energy_total_low

@gravelfreeman
Copy link

J'ai vue plusieurs messages passer concernant les energy meters, ça se peux-tu que quelqu'un ait trouvé un fix? J'ai updater à la dernière version et ça fonctionne toujours pas de mon bord avec les erreurs dans les logs encore. Je suis revenu sur le Github et j'ai vue que le PR est toujours ouvert. Juste pour me donner une idée, je voulais savoir s'en était ou à peu près?! Merci!

@ic-dev21
Copy link
Collaborator

J'ai vue plusieurs messages passer concernant les energy meters, ça se peux-tu que quelqu'un ait trouvé un fix? J'ai updater à la dernière version et ça fonctionne toujours pas de mon bord avec les erreurs dans les logs encore. Je suis revenu sur le Github et j'ai vue que le PR est toujours ouvert. Juste pour me donner une idée, je voulais savoir s'en était ou à peu près?! Merci!

Tu peux télécharger le repo plutôt qu'attendre le release.

Ouvre un issue si tu as un trouble. De mon côté tout fonctionne A1, à l'exception des 2 issues toujours ouverts qui n'ont pas de fix pour le moment.

@gravelfreeman
Copy link

J'ai vue plusieurs messages passer concernant les energy meters, ça se peux-tu que quelqu'un ait trouvé un fix? J'ai updater à la dernière version et ça fonctionne toujours pas de mon bord avec les erreurs dans les logs encore. Je suis revenu sur le Github et j'ai vue que le PR est toujours ouvert. Juste pour me donner une idée, je voulais savoir s'en était ou à peu près?! Merci!

Tu peux télécharger le repo plutôt qu'attendre le release.

Ouvre un issue si tu as un trouble. De mon côté tout fonctionne A1, à l'exception des 2 issues toujours ouverts qui n'ont pas de fix pour le moment.

Je me sens poche mais comment est-ce que je fais?

@ic-dev21
Copy link
Collaborator

J'ai vue plusieurs messages passer concernant les energy meters, ça se peux-tu que quelqu'un ait trouvé un fix? J'ai updater à la dernière version et ça fonctionne toujours pas de mon bord avec les erreurs dans les logs encore. Je suis revenu sur le Github et j'ai vue que le PR est toujours ouvert. Juste pour me donner une idée, je voulais savoir s'en était ou à peu près?! Merci!

Tu peux télécharger le repo plutôt qu'attendre le release.
Ouvre un issue si tu as un trouble. De mon côté tout fonctionne A1, à l'exception des 2 issues toujours ouverts qui n'ont pas de fix pour le moment.

Je me sens poche mais comment est-ce que je fais?

Le dernier release inclus tout ce qui a été fait à date.

De mon bord autant en prod que Dev tous les meters marchent A1. Je sais pas quel problème exactement tu as par contre.

Pour le moment la seule chose qui n’a pas de solution est le current rate sensor, mais honnêtement il sert pas à grand chose, et les entités qui tentent de se recréer(cause rien sauf un message dans les logs au boot).

@gravelfreeman
Copy link

gravelfreeman commented Apr 19, 2024

J'avais toujours l'erreur après l'update. J'ai donc fait les étapes suivantes:

  • Supprimer mon compte/device Hilo de HAOS
  • Supprimer Hilo dans HACS
  • Supprimer toute les traces de Hilo dans le root de HAOS
  • Supprimer tout les sensors Fix Issue dans Developers Tools
  • Supprimer le fichier core.restore_state
  • Reboot HAOS
  • Réinstallation de Hilo dans HACS
  • Connection de mon compte Hilo
  • Configurer > Cocher les Generate energy meters
  • Configurer > Les options au bas
  • Reboot de HAOS
2024-04-19 13:04:36.851 ERROR (MainThread) [homeassistant.components.sensor] Error while setting up hilo platform for sensor
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 356, in _async_setup_platform
    await asyncio.shield(awaitable)
  File "/config/custom_components/hilo/sensor.py", line 194, in async_setup_entry
    await utility_manager.update(async_add_entities)
  File "/config/custom_components/hilo/managers.py", line 78, in update
    await utility_setup(self.hass, config)
  File "/usr/src/homeassistant/homeassistant/components/utility_meter/__init__.py", line 144, in async_setup
    if not conf[CONF_TARIFFS]:
           ~~~~^^^^^^^^^^^^^^
KeyError: 'tariffs'
2024-04-19 13:04:36.859 WARNING (MainThread) [pyhilo] Delaying invoke SubscribeToLocation 0 [32623]: Websocket not ready.
2024-04-19 13:04:37.047 WARNING (MainThread) [custom_components.hilo] check_tarif: Unable to find state for sensor.hilo_energy_total_low
2024-04-19 13:04:37.048 WARNING (MainThread) [custom_components.hilo] Current condition: 
2024-04-19 13:04:38.061 WARNING (MainThread) [custom_components.ge_home.update_coordinator] Could not find appliance D828C99CE098 in known device list.
2024-04-19 13:04:38.654 WARNING (MainThread) [homeassistant.helpers.entity] Entity None (<class 'custom_components.browser_mod.media_player.BrowserModPlayer'>) is using deprecated supported features values which will be removed in HA Core 2025.1. Instead it should use <MediaPlayerEntityFeature.PAUSE|SEEK|VOLUME_SET|VOLUME_MUTE|TURN_ON|TURN_OFF|PLAY_MEDIA|STOP|PLAY|BROWSE_MEDIA: 152463>, please report it to the author of the 'browser_mod' custom integration and reference https://developers.home-assistant.io/blog/2023/12/28/support-feature-magic-numbers-deprecation
2024-04-19 13:05:03.851 WARNING (MainThread) [custom_components.hilo] check_tarif: Unable to find state for sensor.hilo_energy_total_low
2024-04-19 13:06:03.781 WARNING (MainThread) [custom_components.hilo] check_tarif: Unable to find state for sensor.hilo_energy_total_low
2024-04-19 13:07:02.872 WARNING (MainThread) [custom_components.hilo] check_tarif: Unable to find state for sensor.hilo_energy_total_low
2024-04-19 13:07:03.750 WARNING (MainThread) [custom_components.hilo] check_tarif: Unable to find state for sensor.hilo_energy_total_low
2024-04-19 13:08:02.872 WARNING (MainThread) [custom_components.hilo] check_tarif: Unable to find state for sensor.hilo_energy_total_low

Les logs se font aussi spammer par le nouveau sensor de température extérieure;

2024-04-19 13:07:02.873 WARNING (MainThread) [custom_components.hilo] Current condition: mostly cloudy

J'ai vérifié et j'ai toujours utility_meter: dans mon configuration.yaml.

Peux-tu y croire! Je suis encore le seul qui n'a pas d'energy dashboard fonctionnel.

Quoi faire maintenant?

@ic-dev21
Copy link
Collaborator

J'avais toujours l'erreur après l'update. J'ai donc fait les étapes suivantes:

  • Supprimer mon compte/device Hilo de HAOS
  • Supprimer Hilo dans HACS
  • Supprimer toute les traces de Hilo dans le root de HAOS
  • Supprimer tout les sensors Fix Issue dans Developers Tools
  • Supprimer le fichier core.restore_state
  • Reboot HAOS
  • Réinstallation de Hilo dans HACS
  • Connection de mon compte Hilo
  • Configurer > Cocher les Generate energy meters
  • Configurer > Les options au bas
  • Reboot de HAOS
2024-04-19 13:04:36.851 ERROR (MainThread) [homeassistant.components.sensor] Error while setting up hilo platform for sensor
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 356, in _async_setup_platform
    await asyncio.shield(awaitable)
  File "/config/custom_components/hilo/sensor.py", line 194, in async_setup_entry
    await utility_manager.update(async_add_entities)
  File "/config/custom_components/hilo/managers.py", line 78, in update
    await utility_setup(self.hass, config)
  File "/usr/src/homeassistant/homeassistant/components/utility_meter/__init__.py", line 144, in async_setup
    if not conf[CONF_TARIFFS]:
           ~~~~^^^^^^^^^^^^^^
KeyError: 'tariffs'
2024-04-19 13:04:36.859 WARNING (MainThread) [pyhilo] Delaying invoke SubscribeToLocation 0 [32623]: Websocket not ready.
2024-04-19 13:04:37.047 WARNING (MainThread) [custom_components.hilo] check_tarif: Unable to find state for sensor.hilo_energy_total_low
2024-04-19 13:04:37.048 WARNING (MainThread) [custom_components.hilo] Current condition: 
2024-04-19 13:04:38.061 WARNING (MainThread) [custom_components.ge_home.update_coordinator] Could not find appliance D828C99CE098 in known device list.
2024-04-19 13:04:38.654 WARNING (MainThread) [homeassistant.helpers.entity] Entity None (<class 'custom_components.browser_mod.media_player.BrowserModPlayer'>) is using deprecated supported features values which will be removed in HA Core 2025.1. Instead it should use <MediaPlayerEntityFeature.PAUSE|SEEK|VOLUME_SET|VOLUME_MUTE|TURN_ON|TURN_OFF|PLAY_MEDIA|STOP|PLAY|BROWSE_MEDIA: 152463>, please report it to the author of the 'browser_mod' custom integration and reference https://developers.home-assistant.io/blog/2023/12/28/support-feature-magic-numbers-deprecation
2024-04-19 13:05:03.851 WARNING (MainThread) [custom_components.hilo] check_tarif: Unable to find state for sensor.hilo_energy_total_low
2024-04-19 13:06:03.781 WARNING (MainThread) [custom_components.hilo] check_tarif: Unable to find state for sensor.hilo_energy_total_low
2024-04-19 13:07:02.872 WARNING (MainThread) [custom_components.hilo] check_tarif: Unable to find state for sensor.hilo_energy_total_low
2024-04-19 13:07:03.750 WARNING (MainThread) [custom_components.hilo] check_tarif: Unable to find state for sensor.hilo_energy_total_low
2024-04-19 13:08:02.872 WARNING (MainThread) [custom_components.hilo] check_tarif: Unable to find state for sensor.hilo_energy_total_low

Les logs se font aussi spammer par le nouveau sensor de température extérieure;

2024-04-19 13:07:02.873 WARNING (MainThread) [custom_components.hilo] Current condition: mostly cloudy

J'ai vérifié et j'ai toujours utility_meter: dans mon configuration.yaml.

Peux-tu y croire! Je suis encore le seul qui n'a pas d'energy dashboard fonctionnel.

Quoi faire maintenant?

Les unable to find state sont normaux avant que le websocket se fasse et que des données se populent.

Je suis peut-être un peu tarla, mais le problème est où exactement? Qu'est-ce qui ne marche pas? Le dashboard énergie ne se populera pas seul tu dois le faire toi même, tu le sais ça right?

@gravelfreeman
Copy link

Je suis peut-être un peu tarla, mais le problème est où exactement? Qu'est-ce qui ne marche pas? Le dashboard énergie ne se populera pas seul tu dois le faire toi même, tu le sais ça right?

Oui je sais, quand je suis dans la liste pour ajouter le consumed energy, les sensors low et medium n'apparaissent pas.

Pour tracker les couts en temps réel par contre ils sont de retour Hilo rate medium et Hilo rate low.

Donc en gros les sensors d'énergie low et medium ne se créer pas.

@ic-dev21
Copy link
Collaborator

ic-dev21 commented May 2, 2024

Je suis peut-être un peu tarla, mais le problème est où exactement? Qu'est-ce qui ne marche pas? Le dashboard énergie ne se populera pas seul tu dois le faire toi même, tu le sais ça right?

Oui je sais, quand je suis dans la liste pour ajouter le consumed energy, les sensors low et medium n'apparaissent pas.

Pour tracker les couts en temps réel par contre ils sont de retour Hilo rate medium et Hilo rate low.

Donc en gros les sensors d'énergie low et medium ne se créer pas.

Et tu n’as pas la case “generate only total meters” de cochée?

désolé si je te fais répéter j’ai juste perdu le fil.

@gravelfreeman
Copy link

Je suis setter comme ça

image

Quand je rentre energy_total, il ne me sort pas le low et medium

image

@ic-dev21
Copy link
Collaborator

ic-dev21 commented May 3, 2024

Je suis setter comme ça

image

Quand je rentre energy_total, il ne me sort pas le low et medium

image

Et tu n'as pas de fix issue dans tes stats? Y'a juste du stock avec une unité d'énergie qui va apparaître là

@gravelfreeman
Copy link

Et tu n'as pas de fix issue dans tes stats? Y'a juste du stock avec une unité d'énergie qui va apparaître là

Non, c'est la première affaire que j'ai regardé! À L'AIDE! J'tanner haha!

@ic-dev21
Copy link
Collaborator

ic-dev21 commented May 4, 2024

Je vais closer car un équivalent de rebase sur main a été fait sur le #422 avec plusieurs améliorations pour rendre le tout fonctionnel.

@gravelfreeman ouvre un issue SVP.

Je commencerais par flusher Hilo sur ton installation incluant le fichier pycache avant de retélécharger la dernière version.

@ic-dev21 ic-dev21 closed this May 4, 2024
@ic-dev21 ic-dev21 deleted the fix_attempt_energy branch May 5, 2024 14:07
@ic-dev21 ic-dev21 restored the fix_attempt_energy branch May 5, 2024 14:07
@ic-dev21 ic-dev21 deleted the fix_attempt_energy branch June 17, 2024 00:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
energy_meter Probleme d'energy meters
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants